МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
Національний університет «Львівська політехніка»
ПОБУДОВА РУХОМИХ ЗОБРАЖЕНЬ
Методичні вказівки
до лабораторної роботи № 4
з курсу «КОМП’ЮТЕРНА ГРАФІКА»
Затверджено
на засiданнi кафедри
"Автоматика та телемеханiка"
Протокол № 8 вiд 26.12.2002p.
Львів 2002
Побудова рухомих зображень: Методичні вказівки до лабораторної роботи з курсу "Комп'ютерна графіка" для студентів спеціальності 6.0914 "Комп'ютеризовані системи, автоматика і управління" / Уклали А.Е.Лагун, В.І.Отенко, Р.А.Гордійчук - Львiв: Національний університет "Львівська політехніка", 2002. – 14 с.
Укладачi: А.Е.Лагун, доцент
В.І.Отенко, доцент
Р.А.Гордійчук, старший викладач
Вiдповiдальний за випуск І.М. Ковела, канд.техн.наук, доцент
Рецензенти: А.Я.Горпенюк, канд.техн.наук, доцент
А.З.Піскозуб, канд.техн.наук, доцент
Мета роботи - набути практичних навиків в складанні програм для побудови рухомих зображень на екрані комп’ютера за допомогою матричних перетворень.
1. Короткі теоретичні відомості.
Для побудови зображень на екрані комп'ютера використовуються операції переносу, масштабування, повороту та їх композиції.
рис.1
Точку на ху-площині можна перенести в нове положення шляхом додавання до її координат констант переносу: (рис.1)
, .
Для векторної форми
, , ;
,
P’=P+T.
Перенесення складного об'єкту виконується шляхом перенесення всіх його точок, – реперних точок: .
Масштабування точки передбачає домноження її координат на коефіцієнти масштабування: , .
При переході до векторної форми, де , можна записати
,
P’=P(S
При повороті точки на кут відносно початку координат нові координати визначаються так (проти годинникової стрілки, додатний поворот):
,
.
В векторній формі, де ,
,
P’=P(R
При від'ємному повороті (за годинниковою стрілкою) Розрахунок повороту в полярних координатах можна виразити наступним чином (рис.2):
;
,
.
На практиці наведені елементарні перетворення при побудові зображень на екрані поєднують. Для цього координати точки приводяться до однорідних координат. При цьому всі перетворення можна реалізувати за допомогою множення матриць.
При від'ємному повороті (за годинниковою стрілкою) Розрахунок повороту в полярних координатах можна виразити наступним чином (рис.2):
;
,
.
рис.2
На практиці наведені елементарні перетворення при побудові зображень на екрані поєднують. Для цього координати точки приводяться до однорідних координат. При цьому всі перетворення можна реалізувати за допомогою множення матриць.
Даний метод полягає в тому, що кожна точка в -мірному просторі є проекцією точки з -мірного простору. Так точка на площині може бути проекцією точки з простору , де може набувати будь-яких значень, крім .
Для координати є нормалізованими.
Декартові координати точки на площині враховуються як:
.
Надалі двомірні перетворення в площині екрану будемо розглядати як перетворення в однорідних нормалізованих координатах .
Для перетворень в нормалізованих однорідних координатах розмірність матриць і векторів перетворень збільшується на 1.
Перенесення.
, ,
P’=P(T(Dx,Dy)
Масштабування.
P’=P(S(Sx,Sy)
.
Поворот.
P’=P(R(()
Всі базові перетворення виконуються відносно початку координат. Для виконання перетворень відносно будь-якої точки використовують композицію базових перетворень.
Розглянемо поворот об'єкту в площині екрану навколо довільної точки . Таке перетворення можна здійснити в результаті послідовності двох базових перетворень: перенесення поворот перенесення.
Перенесення т. в початок координат (рис.3).
Поворот об'єкту на кут (рис.4).
Перенесення, при якому т. повертається у початкове положення (рис.5).
Матриця результуючого перетворення буде такою:
рис.3. рис.4. рис.5.
Якщо при повороті навколо т. необхідно виконати масштабування відносно цієї ж точки, то послідовність базових перетворень буде мати вигляд: перенесення масштабування поворот перенесення.
Як відомо, перемноження матриць неком...